// formidable
// 使用这个模块 来处理 上传文件
var http = require('http');
var fs = require('fs');
var path = require('path');
var datetimie = require('silly-datetime');
var randomInt = require('random-int');

var formidable = require('formidable');

var hostname = '127.0.0.1';

var port = '3000';

var server = http.createServer(function (req,res){
    // 处理请求  和 输出 响应

    if (req.url == '/favicon.ico') { return }
    if (req.url == '/formfile' ) {
        fs.readFile('./formfile.html',function(err,data){
            res.end(data);
        });
    }else if ( req.url == '/dopost' && req.method.toLowerCase() == 'post' ) {
        // 使用 formidable来处理哦

        var form = new formidable.IncomingForm();

        // 设置上传文件 存放位置
        form.uploadDir = "./uploads";

        form.parse(req, function(err, fields, files) {
            console.log(fields,files);
            // 改名字

            // 新名字 时间 随机数 后缀
            var t = datetimie.format(new Date(), 'YYYYMMDDHHmmss');
            var num = parseInt(Math.random()*100000);
            var extname = path.extname(files.image.name);

            // 旧名字
            // __dirname 代表当前项目 根目录
            var oldpath = __dirname + '/' + files.image.path;

            // 新名字
            var newpath = __dirname + '/uploads/' + t + num + extname;

            console.log(oldpath,newpath);

            // 执行 改名字
            fs.rename(oldpath,newpath,function(err){
                console.log(err);
                res.end('上传成功');

            });

        });




    }else{
        res.end('404 NOT FOUND');
    }


});

server.listen(port,hostname,function(){
    console.log('朋友就是拿来卖的');
});

